Solid State Drives (SSD) are becoming popular replacements for conventional hard disk drives (HDD). Non-volatile flash memory is being used to create more rugged and compact devices for the consumer market. These flash memory-based SSDs, also known as flash drives, do not require batteries. They are often packaged in standard disk drive form factors. In addition, non-volatility allows flash SSDs to retain memory even during power outages, ensuring data retrievability. Though flash SSDs are significantly slower than DRAM (dynamic random access memory), they usually perform better than conventional hard drives, at least with regard to reads, because of negligible seek time. Flash-based SSDs have no moving parts, and thus eliminate spin-up time, and greatly reduce seek time, latency, and other delays inherent in conventional electro-mechanical disk drives.
Unlike HDDs though, flash based SSDs have limited P/E (program/erase) cycle life. This limited P/E cycles is even more severe in MLC (Multi-Level-Cell) type NAND flash memories than in SLC (Single Level-Cell). While SLC can be reliable up to about 100,000 P/E cycles for the life time, MLC NAND flash memory can only have about 10,000 P/E cycles. However, because of the great advantage of cost effective higher density in MLC NAND flash, for example, two bit per cell MLC is four times greater than one bit per cell SLC in terms of density. More manufacturers are now producing more MLC NAND flash memory than SLC NAND flash memory. These P/E limits can manifest themselves a block-level write failures or page level read failures.
Since there are reduced number P/E cycles available compared to SLC based SSDs and HDDs, MLC based SSDs require more effective methods for obviating errors compared to SLC based SSDs.